package com.atstudying.common.exception;

/**
 * @author Mr.zhneg
 * @create 2020-10-14-14:29
 */

/**
 *  错误码和错误信息定义类
 *  1：错误码定义规则为5位数字
 *  2：前两位表示业务场景，最后三位表示错误码
 *  3：维护错误码后，需要维护错误描述，并将他们定义为枚举
 *
 *  错误码列表：
 *  10：通用
 *     001：参数校验格式
 *     002：短信验证码
 *   11：商品
 *   12：订单
 *   13： 购物车
 *   14：物流
 *   15：用户
 *     001 用户名存在异常
 *     002 手机号码存在异常
 *     003 用户名或密码错误
 *   21：库存
 */
public enum BigCodeEnume {

    //枚举类实例,默认是调用了构造器的  private BigCodeEnume(int code,String msg)
    UNKNOW_EXCEPTION(10000,"系统未知异常"),
    VALID_EXCEPTION(10001,"参数校验失败"),
    SMS_CODE_EXCEPTION(10002,"短信验证码获取频率太高，稍后再试"),
    USER_EXIST_EXCEPTION(15001,"用户名存在异常"),
    PHONE_EXIST_EXCEPTION(15002,"手机号码存在异常"),
    USERORPASSWORD_EXIST_EXCEPTION(15003,"用户名或密码错误"),

    NO_STOCK_EXCEPTION(21000,"商品库存不足"),
    PRODUCT_UP_EXCEPTION(11000,"商品上架异常");

    private int code;
    private String msg;

     private BigCodeEnume(int code,String msg){
        this.code=code;
        this.msg=msg;
    }

    public int getCode(){
        return code;
    }
    public String getMsg(){
        return msg;
    }
}
